/**
* All Rights Reserved , Copyright (C) 2022 , 青岛鼎信通讯股份有限公司
*
* IMmsProvinceCityMatchinfoService
* 省份地市信息表新
*
* 修改纪录
* 2022-01-10 版本：1.0 wangjielei 创建。
* @version 版本：1.0
* @author 作者：wangjielei
* 创建日期：2022-01-10
*/

package com.topscomm.mms.service;

import java.util.List;
import java.util.Map;

import com.topscomm.cbo.model.TreeModel;
import com.topscomm.mms.IMmsService;
import com.topscomm.mms.pojo.MmsProvinceCityMatchinfoEntity;
import com.topscomm.mms.dao.IMmsProvinceCityMatchinfoDao;
import com.topscomm.pub.util.StringBufferProxy;

public interface IMmsProvinceCityMatchinfoService extends IMmsService<MmsProvinceCityMatchinfoEntity, IMmsProvinceCityMatchinfoDao>{

	List<MmsProvinceCityMatchinfoEntity> acquireAllUpArea(Map<String, Object> paraMap);

	List<Map<String, Object>> acquireAllLowerArea(Map<String, Object> paraMap);

	List<Map<String, Object>> acquireCascaderAllLowerArea(Map<String, Object> paraMap);

	String getDispdeptname(String deptname1, String deptname2, String deptname3);

    /**
      * @description:
      * @author xinfushuo
      * @param
      * @throws
      * @return
      * @date 2022/3/31
      * @modify
      */
    void generateInstance(MmsProvinceCityMatchinfoEntity entity);

    String queryLevel(String userCode);

    List<TreeModel> queryTreeList(String userCode);

    Boolean checkIsMatchs();

    Boolean checkIsCitys();

    Boolean checkIsProvinces();

    Boolean checkIsOperators();

    Boolean checkIsTop();

    /**
     *
     * @description: 实现级联删除
     * @param ids
     * @author: zhangjunyao
     * @date: 2022-02-15
     * @modify:
     */
    void deleteCascade(String ids);

    /**
     * @param
     * @description: 查询市级区域
     * @author: zhangjunyao
     * @date: 2022-02-26
     * @modify:
     */
    List<String> queryCity();

    /**
     * @param
     * @description: 根据用户权限拼接sql查询区域（用于点击左树加载右列表list方法）
     * @author: zhangjunyao
     * @date: 2022-03-01
     * @modify:
     */
    void spellSqlByUserLevel(StringBufferProxy sql, String id);

    /**
     * @param
     * @description: 根据用户权限拼接sql查询区域（用于搜索条件查询）
     * @author: zhangjunyao
     * @date: 2022-03-01
     * @modify:
     */
    void spellSqlByUserLevelForQuery(StringBufferProxy sql);
}
